-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optimize productR in Apply #2728
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2728 +/- ##
=======================================
Coverage 95.13% 95.13%
=======================================
Files 365 365
Lines 6799 6799
Branches 296 296
=======================================
Hits 6468 6468
Misses 331 331
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good to me. this reduced one map
in map2
which is basically
map(ap(map(fa)(a => (b: B) => (a, b)))(fb))((_, b) => b)
sorry about the delay, I missed this one while on vacation. |
* Change MonadErrorOps#reject so it no longer runs effects twice (#2810) * Add regression test for MonadErrorOps bug * Change MonadErrorOps#reject so it no longer re-runs the effect it is called on. Fixes #2809 * Fix Order.max and Oder.min description comments (#2842) Changed description to better fit their implentation * Make WrappedMutableMapBase extend Serializable (#2784) We are running into Spark `Task not serializable` issues when a closure that executes on a Spark executor node involves a `Map` that is created via running `foldMap` on a `List`. This commit makes the `WrappedMutableMap` hierarchy extend `Serializable` and chex that the cerealization works (this test failed before extending `Serializable`). * Optimize productR in Apply (#2728)
Further improvement similar to #2597 . Resolves problems like this: typelevel/cats-effect#401 .
Reference to
a
was kept unnecessarily by prev implementation with map2: